<?php
namespace Admin\Controller;
use Think\Controller;
class PracticeController extends Controller {
    public function index(){
        $this->display();
    }
    public function _initialize(){ 
      if (!session('?admin'))
      {        
                $this->error('无权限',U('Login/login'));
                             exit();                  
  }
  if (session('admin.state')<1) {
       $this->error('无权限',U('Login/login'));
                             exit();               
  }
    }

      public function practicelist(){
        $User = M('practices'); // 实例化User对象
        $count= $User->count();// 查询满足要求的总记录数
        $Page = new \Think\Page($count,5);// 实例化分页类 传入总记录数和每页显示的记录数(5)
         //进行分页数据查询 注意limit方法的参数要使用Page类的属性
        $list = $User->order('id desc')->limit($Page->firstRow.','.$Page->listRows)->select(); 
        $show = $Page->show();// 分页显示输出
        // $this->users=$list;
        // $this->page=$show;
        $this->assign('practices',$list);// 赋值数据集
        $this->assign('page',$show);// 赋值分页输出
        $this->display(); // 输出模板
    }

	public function Practices(){
        $usersmodel=M('Practices');
        $users=$usersmodel->order('id desc')->select();
        $this->users=$users;
        $this->display();
    }
    function delPractice($id){
    //生成一个Users模型
    $usersModel=M('Practices');
    //调用模型的方法删除数据
    if($usersModel->delete($id)){
        //delete * from think_users where id=$id
        //删除成功
        $this->success('删除成功');
    }else{
        //删除失败
        $this->error('删除失败');
    }
   }

   function updatePracticeInfo($id){
     $usersModel=M('Practices');
     $this->practices=$usersModel->find($id);
     $this->display();
     //强查询到的用户信息user 传递给模板updateUserInfo.html
   }
 function update(){
    //获取updateUserInfo提交过来的数据，写入并修改数据库
    //获取参数方法 $_POST I(post.+字段名)  例$data=$_POST    $data=I(post,)
    // create()  利用$_POST数组创建一个对象  
    $userModel=M('Practices');
    $userModel->create();
  if($_FILES['logo']['error']==0)
  {
    $photoinfo=$this->upload();
    $userModel->photo=$photoinfo['logo']['savename'];
  }
    if ($userModel->save()) {
     $this->success('修改社团信息成功','practicelist');
    }
    else{
      $this->error('修改社团信息失败');
             }
  }
       public function upload(){
        $upload= new \Think\Upload();
        $upload->maxSize=3145728;
        $upload->exts=array('jpg','gif','png','jpeg','txt');
        $upload->rootPath='./Public/UpLoads/file/';
        $upload->autoSub=false;
        
        $info = $upload->upload();
        if(!$info) {
        // 上传错误提示错误信息
        $this->error($upload->getError());
        }
        else
        {// 上传成功
         return $info;
        }
 }
   public function doaddPractice()
   {
    //接收从addUser.html界面 提交过来的信息
    //创建对象 保存到数据库中
    $userModel=D('Practices');
    if ($userModel->create()) 
    {
     if($_FILES['pfile']['error']==0)
     {
     $filename=$this->img();
     $userModel->photo=$filename;
      }
    $userModel->puser=session('admin.adminname');
    $userModel->pdate=date('Y-m-d');
    if ($userModel->add()) {
     $this->success('添加社团活动成功','practicelist');
    }
    else{
      $this->error('添加社团活动失败');
    }
   }
   else
   { 
    $this->error($userModel->getError());
   }
    }
  

  function img(){
    //图像处理函数
    $photoinfo=$this->upload();//将临时文件保存到指定位置
    $filepath='./Public/Uploads/file'; //定义图片的保存论经
    $oldFileName=$photoinfo['pfile']['savename'];//未修改的文件名不包含文件位置
    $oldFileFullName=$filepath.'\\'.$oldFileName;
    //未修改的文件名包含保存文件的位置和文件名
    $newFilename='thumb_'.$oldFileName;//新文件名
    $newFileFullName=$filepath."\\".$newFilename;
     //修改后的文件名包含保存文件的位置和文件名

    $image=new \ Think\Image();
    $image->open($oldFileFullName);//定义打开的修改文件
    $image->thumb(150,150)->save($newFileFullName);//定义文件缩略的大小和缩略后的文件名
    return $newFilename;
  }


public function addPractices(){
  $groupModel=M('groups');
  $this->groups=$groupModel->field('gid,groupname')->select();
  $this->display();
}

    public function practiceUserlist($id){
       $UserModel=M('Stuprac');
       $UserModel->create();
       $Page = new \Think\Page($count,15);// 实例化分页类 传入总记录数和每页显示的记录数(5)
         //进行分页数据查询 注意limit方法的参数要使用Page类的属性

        $list=$UserModel->order('sid desc')->limit($Page->firstRow.','.$Page->listRows)->where('Stuprac.pid='.$id)->select();
        $show = $Page->show();// 分页显示输出
        // $this->users=$list;
        // $this->page=$show;
        $this->assign('stuprac',$list);// 赋值数据集
        $this->assign('page',$show);// 赋值分页输出
        $this->display(); // 输出模板

    }
     public function addPracticeUser($id){
        $User = M('Users'); // 实例化User对象
        $count= $User->count();// 查询满足要求的总记录数
        $Page = new \Think\Page($count,5);// 实例化分页类 传入总记录数和每页显示的记录数(5)
         //进行分页数据查询 注意limit方法的参数要使用Page类的属性
        $list = $User->order('uid desc')->limit($Page->firstRow.','.$Page->listRows)->select(); 
        $show = $Page->show();// 分页显示输出
        // $this->users=$list;
        // $this->page=$show;
        $this->assign('users',$list);// 赋值数据集
        $this->assign('page',$show);// 赋值分页输出
        $this->display(); // 输出模板
  }
   public function doaddPracticeUser()
  {
    $UserModel=M('Stuprac');
      $condition=array(
         'realname'=>$_POST['realname'],
         'stunum'=>$_POST['stunum']
        );
      $id=$_POST['pid'];
   $user=$UserModel->where($condition)->find();
   if ($user['pid']==$id) 
   {
      $this->error('该用户已参加此活动');
   }else
   {
    if($UserModel->create())
    {
     $userModel->atime=date("Y-m-d H:i:s" );
     $UserModel->state=1;
     if ($UserModel->add()) {
     $this->success('添加社团成员成功','practicelist');
    }
    else{
      $this->error('添加社团成员失败');
    }
  }
    else
      $this->error($UserModel->getError());
}
}

public function setPracticeUser($id)
   {
         $usersModel=M('Stuprac');
         $data['state']=1;
         if($usersModel->where('id='.$id)->save($data))
          {$this->success('审批通过');}
         else
          {$this->error('审批失败');}
   }

   public function delPracticeUser($id)
   {
         $usersModel=M('Stuprac');
         $usersModel->create();
         if($usersModel->where('id='.$id)->delete())
          {$this->success('删除成功');}
         else
          {$this->error('删除失败');}
   }

}
?>